/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package proyectoexcel;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

/**
 *
 * @author Alejandro
 */
public class Interf {
        
        static JFrame ew=new JFrame();
        
        static Button aceptar=new Button("Aceptar");
        
        static Button examinar=new Button("Examinar");
        
        static JEditorPane examin = new JEditorPane();

        public static void generar() { 
            ew.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            ew.setLocation(250, 150);
            ew.setSize(600, 300);
            ew.setTitle("CALPROM v1.0");
            ew.setResizable(true);
            Color color = new Color(192,192,19);
            ew.setBackground(color);
            ew.add(new Bienvenida(),BorderLayout.NORTH);
            ew.add(new Creditos(),BorderLayout.SOUTH);
            examinar.addActionListener(new EventHandlerLoad());
            examinar.setActionCommand("CLICK");
            aceptar.addActionListener(new EventHandlerAccept());
            aceptar.setActionCommand("CLICK");
            ew.add(new BusquedaArchivo(),BorderLayout.CENTER);
            ew.show();
        }
        
        public static String showPathname() { 
            String pathname = examin.getText();
            return pathname;
        }
        
        public static String pathname() { 
            String pathname = examin.getText();
            
            return pathname;
        }
        
        public static String accepted() {
            if(aceptar.getActionCommand().equals("ACEPTADO"));
            return aceptar.getActionCommand();
        }

        public static class Bienvenida extends Panel {
            public Bienvenida() {
                setLayout( new FlowLayout() );
                ImageIcon icon = new ImageIcon("logo.gif","");
                JLabel bienvenido=new JLabel("<html><p><b>Bienvenido a CALPROM</p>CALPROM permite el CALculo de PROMedios de las materias de Computacion de la USB</html>",icon,JLabel.CENTER);
                bienvenido.setFont(new Font("Serif", Font.PLAIN, 12));
                add(bienvenido);
            }
        }
        public static class BusquedaArchivo extends Panel {
            public BusquedaArchivo() {
                setLayout( new FlowLayout() );
                JLabel bienvenido=new JLabel("<html><p>Seleccione el archivo excel.</html>",JLabel.CENTER);
                bienvenido.setFont(new Font("Serif", Font.PLAIN, 11));
                add(bienvenido);
                add(examin);
                add(aceptar);
                add(examinar);
            }
        }
        public static class Creditos extends Panel {
            public Creditos() {
                setLayout( new FlowLayout() );
                JLabel creditos=new JLabel("<html><p><b>Hecho por:</p><br>Alejandro Rodriguez<br>Jorge Lucic</html>",JLabel.RIGHT);
                creditos.setFont(new Font("Serif", Font.PLAIN, 11));
                add(creditos);
            }
        }
        
        public static class EventHandlerLoad implements ActionListener {

            public String loadFile (Frame f, String title, String defDir, String fileType) {
                FileDialog fd = new FileDialog(f, title, FileDialog.LOAD);
                fd.setFile(fileType);
                fd.setDirectory(defDir);
                fd.setLocation(50, 50);
                fd.show();
                String path = fd.getDirectory()+fd.getFile();
                return path;
            }

            public void actionPerformed(ActionEvent exam) {
                   String archivo = (loadFile(ew,"Seleccione el archivo desesado.",".\\", "*.xls"));
                   if (archivo != null) {
                       examin.setText(archivo);
                       examinar.setActionCommand("CLICKADO");
                   }
            }
        }
        
        public static class EventHandlerAccept extends Panel implements ActionListener {
            
            public void actionPerformed(ActionEvent exam) {
                if (examinar.getActionCommand().equals("CLICKADO")) {
                    aceptar.setActionCommand("ACEPTADO");
                }
            }
        }
}
